Introducción a la ingeniería de requisitos

Introducción

La ingeniería de requisitos es la disciplina que se encarga de obtener, analizar, documentar y validar los requisitos, y dado que estos pueden variar y evolucionar a lo largo del proyecto, las actividades de gestión serán fundamentales.

 

Fases_ingenieria_de_requisitos

 

Un requisito es la capacidad, característica o factor de calidad del sistema, que aporta valor al cliente o usuario final y sirve de base del trabajo de diseño, desarrollo, pruebas y mantenimiento.

 

Concepto de requisito

Un requisito, definido desde diferentes puntos de vista, es:

 

Dimensiones de los requisitos

 

Dimensiones_requisitos

 

Jerarquía de los requisitos

  1. Requisitos de negocio: expresan por qué una organización desea desarrollar una sistema (objetivos).

  2. Requisitos de usuario: describen qué desean hacer los usuarios con el sistema (necesidades y objetivos personales).

  3. Requisitos funcionales: indican qué deben implementar los desarrolladores para que los usuarios alcancen sus objetivos. En ocasiones también indican lo que el sistema no debe hacer.

  4. Requisitos no funcionales: son limitaciones sobre servicios o funciones que ofrece el sistema.

    • Aspectos legislativos.

    • Aspectos de proceso.

    • Lenguajes y tecnologías.

    NO SON FUNCIONALIDADES CONCRETAS, PERO PUEDEN GENERARLAS.

     

Niveles_requisitos

 

Ejemplo de requisitos de una aplicación de videoconferencia:

 

REQUISITOS FUNCIONALES

¿Qué?
REQUISITOS NO FUNCIONALES

¿Cómo?
- Agregar un nevo participante.
- Contar el número de participantes.
- Expulsar a un particiante.
- Silenciar el audio.
- Calidad del audio y el video.
- Confiabilidad del sistema.
- Facilidad de uso.
- Coste de desarrollo.

 

Dimensiones de la Ingeniería de requisitos

Se identifican tres dimensiones fundamentales en la ingeniería de requisitos, y cada una de ellas tiene asociado un objetivo determinado:

 

Dimensiones_ingenieria_requisitos

 

Proceso de ingeniería de requisitos

La ingeniería de requisitos es la primera de las actividades básicas de la ingeniería del software y la más fundamental de todas.

Dentro de los distintos modelos de proceso podemos identificar distintas actividades y configuraciones

La ingeniería de requisitos tiene como producto final un documento que contiene una especificación formalizada de los requisitos que los interesados desean.

Podemos distinguir dos tipos de audiencia principales:

 

Modelos de proceso

Proceso iterativo e incremental (Sommerville 2005)

Sommerville identifica 4 actividades:

 

Iterativo_incremental_IR_Sommerville

 

Proceso iterativo (Wiegers y Beatty 2013)

Este modelo no contempla el estudio de viabilidad como parte del proceso, si no como una actividad previa al comienzo del proyecto. Una vez obtenido el informe de viabilidad positivo, las actividades de elicitación, análisis, especificación y validación están fuertemente acopladas entre sí.

 

Proceso_iterativo_Wiegers

 

Proceso en espiral (Somerville 2011)

El modelo en espiral resalta la naturaleza iterativa e incremental del proceso.

 

Espiral_IR_Sommerville

 

Analista de negocio

El analista de negocio es el individuo que tiene la principal responsabilidad de elicitar, analizar, documentar y validar las necesidades de los stakeholders del proyecto.

Es el intermediador entre los clientes y el equipo de desarrollo.

NO ES UN JEFE DE PROYECTO, pues este gestiona la información relativa al proyecto, mientras que el analista de negocio recolecta y disemina información sobre el producto.

 

Tareas fundamentales del analista de negocio

 

by Jose Manuel Pinillos